package kov.core
{
	import flash.display.DisplayObject;
	
	import kov.display.AdvancedAnimation;
	import kov.geom.Cube;

	/**
	 * Body 接口。
	 * @author Y.Boy
	 */	
	public interface IBody
	{
		function get visibleCube():Cube;
		
		function get currentState():IBodyState;
		
		function get renderer():AdvancedAnimation;
		
		function get defaultState():IBodyState;
		
		function get wuid():uint;
		function set wuid(value:uint):void;
		
		function get faceToLeft():Boolean;
		function set faceToLeft(value:Boolean):void;
		
		function get x():Number;
		function set x(value:Number):void;
		
		function get y():Number;
		function set y(value:Number):void;
		
		function get z():Number;
		function set z(value:Number):void;
		
		function executeStateCommand(stateCommand:StateCommand):void;
		
		function locateAt(x:Number, y:Number, z:Number):void;
		
	}
}